package com.divemotor.ventarepuestosinternet.beans.adapter;

import com.divemotor.ventarepuestosinternet.util.Constantes;

public class ElementoCotizacionAdapter {

	private String chasis;
	private String tipoVehiculo;
	private String marca;
	private String placa;
	private String tipo;
	private String modelo;
	private Integer cantidad;
	private String codigo;
	private String descripcion;
	
	private ImagenRepuestoAdapter imagenRepuesto;
	private PromocionAdapter	  promocion;
	
	private Integer idCotizacion;
	private boolean tipoElemento;
	
	public ElementoCotizacionAdapter() {
		
	}
	
	//Constructor para cargar el detalle de ElementoCotizacion: promocion
	public ElementoCotizacionAdapter(Integer idPromocion, String desc){
		promocion = new PromocionAdapter(idPromocion, desc);
	}

	//Constructor para cargar el detalle de ElementoCotizacion: repuesto
	public ElementoCotizacionAdapter(Integer posicion, String codGru, String descGru, String codSubGru, String descSubGru,
									 String codResp, String descResp, String tipoImg, String nomImg){
		GrupoAdapter grupoAdapter 		= new GrupoAdapter(codGru, descGru);
		SubGrupoAdapter subGrupoAdapter = new SubGrupoAdapter(codSubGru, descSubGru, grupoAdapter);
		ImagenAdapter imagenAdapter     = new ImagenAdapter(tipoImg, nomImg, subGrupoAdapter);
		RepuestoAdapter repuestoAdapter = new RepuestoAdapter(codResp, descResp);
		imagenRepuesto 					= new ImagenRepuestoAdapter(posicion, imagenAdapter, repuestoAdapter);
	}
	
	//Constructor para crear ElementoCotizacion
	public ElementoCotizacionAdapter(String chasis, String tipoVehiculo, String marca, String placa, 
									 String tipo, String modelo, Integer cantidad, String codigo, 
									 String descripcion, Integer idCotizacion) {
		this.chasis 		= chasis;
		this.tipoVehiculo 	= tipoVehiculo;
		this.marca 			= marca;
		this.placa 			= placa;
		this.tipo 			= tipo;
		this.modelo 		= modelo;
		this.cantidad 		= cantidad;
		this.codigo 		= codigo;
		this.descripcion 	= descripcion;
		this.idCotizacion   = idCotizacion;
		this.tipoElemento   = tipo.equals(Constantes.REPUESTO) ? true : false;
	}
	
	public void crearImagenRepuestoDefault(){
		imagenRepuesto = new ImagenRepuestoAdapter();
	}
	
	public void crearPromocionDefault(){
		promocion      = new PromocionAdapter();
	}

	public String getChasis() {
		
		if(chasis == null){
			chasis = Constantes.NA;
		}
		
		return chasis;
	}

	public void setChasis(String chasis) {
		this.chasis = chasis;
	}

	public String getTipoVehiculo() {
		
		if(tipoVehiculo == null){
			tipoVehiculo = Constantes.NA;
		}
		
		return tipoVehiculo;
	}

	public void setTipoVehiculo(String tipoVehiculo) {
		this.tipoVehiculo = tipoVehiculo;
	}

	public String getMarca() {
		
		if(marca == null){
			marca = Constantes.NA;
		}
		
		return marca;
	}

	public void setMarca(String marca) {
		this.marca = marca;
	}

	public String getPlaca() {
		
		if(placa == null){
			placa = Constantes.NA;
		}
		
		return placa;
	}

	public void setPlaca(String placa) {
		this.placa = placa;
	}

	public String getTipo() {
		
		if(tipo == null){
			tipo = Constantes.NA;
		}
		
		return tipo;
	}

	public void setTipo(String tipo) {
		this.tipo = tipo;
	}

	public String getModelo() {
		
		if(modelo == null){
			modelo = Constantes.NA;
		}
		
		return modelo;
	}

	public void setModelo(String modelo) {
		this.modelo = modelo;
	}

	public Integer getCantidad() {
		
		if(cantidad == null){
			cantidad = 0;
		}
		
		return cantidad;
	}

	public void setCantidad(Integer cantidad) {
		this.cantidad = cantidad;
	}

	public String getCodigo() {
		
		if(codigo == null){
			codigo = Constantes.NA;
		}
		
		return codigo;
	}

	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}

	public String getDescripcion() {
		
		if(descripcion == null){
			descripcion = Constantes.NA;
		}
		
		return descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

	public Integer getIdCotizacion() {
		return idCotizacion;
	}

	public void setIdCotizacion(Integer idCotizacion) {
		this.idCotizacion = idCotizacion;
	}

	public ImagenRepuestoAdapter getImagenRepuesto() {
		return imagenRepuesto;
	}

	public void setImagenRepuesto(ImagenRepuestoAdapter imagenRepuesto) {
		this.imagenRepuesto = imagenRepuesto;
	}

	public PromocionAdapter getPromocion() {
		return promocion;
	}

	public void setPromocion(PromocionAdapter promocion) {
		this.promocion = promocion;
	}

	public boolean isTipoElemento() {
		return tipoElemento;
	}

	public void setTipoElemento(boolean tipoElemento) {
		this.tipoElemento = tipoElemento;
	}
	
}
